19:49

Дайте мне эльфа... за горло подержать...
18:21

Дайте мне эльфа... за горло подержать...
Сегодня прямо тысячи меня. Подросили вот, с этого воскресенья.
изображение

12:46

Дайте мне эльфа... за горло подержать...
В апреле мы провели Ханифест парк-пати, это нечто вроде косплея под открытым воздухом.
Выглядело это забавно.
изображение

12:20

Дайте мне эльфа... за горло подержать...
Уняня. Меня это восхищает. Закрыть ставеньки покрутив ручку.
В козмозе.
Прямой механизм, ололо.
Ручка т.е. проходит наружу :)


Я не говорю что я как-то особо потрясен, но это в некотором роде гениально. Так и представляюю себе какуюб-то космическую оперу, где шваброй открывают иллюминаторы.

13:51

Дайте мне эльфа... за горло подержать...
Звучит многообещающе.


23:38

Дайте мне эльфа... за горло подержать...
Уважаю некоторых фурфагов.
NSFW

16:11

Дайте мне эльфа... за горло подержать...
Готовлюсь к фестивалю. Рисую покадрово видео - хорошо, что выходной, можно позаниматься делом.
изображение

17:15

Дайте мне эльфа... за горло подержать...
30.04.2015 в 13:42
Пишет  undel:

Вальпургиева ночь
Милости прошу к нашему шабашу - по случаю наступающей Вальпургиевой ночи традиционный пост с ведьмами.
Под катом колдовской арт от дивных-дивных-дивных Tin Can Forest и тематическая музыка :)
Всем добра и Первомая!



читать дальше

URL записи

14:47

Дайте мне эльфа... за горло подержать...
Всего получается 14694 строк кода.
Учитывая что я не дев и это не приложение - это конфиги и конфигурация конфигов - это мягко говоря немало.

14:18

Дайте мне эльфа... за горло подержать...
Вообще у меня прямо чешется.
Попытаюсь рассказать адекватно, хотя здесь я сталкиваюсь с проблемой en.wikipedia.org/wiki/Curse_of_knowledge

Но чем я занимался последние месяцы начало работать, ура!
Итак, есть проблема.
Есть некоторый софт, скажем, наше приложение. Но, к огромному сожалению разрабов и радости потребителей, приложение на яве. В результате оно должно работать на совершенно дикой комбинации (в последний раз матрица допустимых комбинаций была в райное 250к, но мне кажется, что это больше)

Ява: 1.6, 1.7. Оракл, ОпенЖДК, и даже IBM (1.6)
ОС: linux, unix, windows. x86, x86_64. В теории, если у вас есть ява под ваш арм, поверппц и прочее - тоже может заработать.
ДБ: postgresql, mysql, oracle db, db2, sqlserver. В разнообразнейшем наборе версий постгрес начиная с 8.х заканчивая 9.4, db2 от 9.7 до 10.5, оракл слава богу только 11 и 12, и так далее.
АппСервер: томкаты (все, кроме пятого), джейбоссы (все, начиная с 5.1), глассфишы - все, начиная с 3 (теоретически и 2.х может работать, но это никто не проверял миллион лет), tc-server (томкат в красивой обертке), и... ТАДАДДАДАММ- WAS и WLS! Последние - монструозные чудовища, весьма любимые разработчиками из Мумбая. Вполне возможно, эти апп сервера неплохие сами по себе, но документация по ним ужасна, монструозноть этих решений зашкаливает, а поставить оракловское решение на систему без X сервера является задачей, почти непосильной небодержателям.
Версии приложения. Скажем, начиная с 5.2 и заканчивая 6.0, плюс бранчи, плюс транк, плюс релиз кандидат, плюс всякое.

И вот все эти комбы дожны поддерживаться. Да, конечно, есть нюансы, не обязательно проверять минорные версии и все такое. Никто не запустит автомейшн тесты на 250к машин.

Чем я занимаюсь последнее время?
Леплю свое "облако". Моя предыдущая версия, запущенная в 2012 году специально для саппорта, поддерживала фиксированный набор БД (постгрес, оракул, мухля) фиксированных весрий, томкат, жыбосс, глассфиш. Все тоже фиксированных версий. Все это ставилось на виртуалку, в которой уже все было предустановлено, в результате жесткий диск занимал 20 гиг, да и любые изменения самой виртуалки требовали модификации каждой из них с жонглированием и прочим.
Потом эти скрипты прикрутили к локальном удежникинсу, выдав людям удобный интерфейс. Но они все равно не пользовались, носились по всему миру с криками "обожемой, как же мне получить наш сервер на таком-то таком-то софте?", пока их за ручку не вели к дежнкинсу, не тыкали носом в джобу, и не показывали, как оно работает.

После трех десятков таких микро-сессий для людей, неспосбных читать мыло и смотреть обязательные для посещения презентации, читать доку для девелоперов и вообще что-то помнить, масштабы пользования этими скриптами достигли впечатляющих - для локального пользования, конечно - размеров. В среднем постоянно вертится 50-70 виртуалок, а количество билдов проскочило полторы тысячи отметок.

За сим я сейчас занимаюсь второй фазой всей этой дребедени.
Виртуалка создается почти с нуля, чистая. На нее запиливается нужный софт, записывается нужная конфига, втягиваются архивы, и все это устанавливается. Все - с нуля, чтобы гарантировать пользователю чистую виртуалку в состоянии, на которой можно запустить тестьют (а там вам не хухры-мухры, там восемь часов и какое-то дикое количество тестов, все они гоняются на 18 селениумовских нодов и админ в штатах бегает кругами, ибо эти ноды жрут ВСЕ до чего дотянутся, начиная процом и закачнивая сетью).

Кроме того установка с нуля позволяет - во всяком случае теоретически - добавлять новые конфиги намного более простым способом. Виртуалка, на которой одновременно будет установлен вообще вся сборная солянка, была бы безумных размеров и вряд ли бы работала адекватно.

За последние три месяца, я добился того, что у меня появилась комба из постгреса, дб2, оракла, томката7, томката8 и WAS.
Особая пикантность состоит в том, что инсталляция на каждый тип базы данных имеет свои нюансы, а инсталлятора в WAS нет вообще. Процедура установки - 20 страниц текста в мануале, вероятно, понятная сертифицированному админу ВАСа, но непонятная человеку, который знает, как работают веб и апп серверы.

Но мы не лыком шиты! Поэтому всего три недели понадобилось, чтобы собрать генератор скрипта, который потом устанавливает наш апп в зависимости от всех этих деталей, после чего удалось стабилизировать выполнение тестсьюта и прочее прочее прочее.

Например, высплыла забавная подробность того, что ibm jdk в некоторых ситуациях не находит своп и умирает с непереводимыми криками о кончившейся памяти, хотя памяти в системе может быть даже 32 Гига, а хипа выделено от 4 до 16. Оказалось, что добавление свопа в гиг и установление vm_swappiness в 1 решает эту проблему раз и навсегда.
Или там что WAS воспринимает jdbc дрова из приложения не с первого раза - разве что их залить в lib/ самой вебсферы.

А если вам надо запилить запуск тестсьюта на вмке, туда надо допилить свойств, неведомых простым людям, втянуть sql и провести дполнительные танцы с бубном - этими я, к счастью, пока не занимался.

Общий процесс выглядит так.

пользователь тыкает Дженкинс воркфлоу с кучей параметров.
Воркфлоу запускает нужные джобы.
Джобы зовут Рандек, который больше подходит для тех команд, которые я гоняю.
Рандек запускает salt-cloud, который запиливает виртуалку.
после salt-cloud Рандек гонят salt-master, который заставляет новсозданного миньона тянуть все, что надо исходя из конфиги. Конфига глубоко параметризированна и больше похожа на невероятный темплейт из помеси yaml и jinja, который тянет дополнительные конфиги (точнее, уже просто структуры данных) из yaml, который снова параметризован через jinja.
Мастер, поставив нужный софт доконфигивает его - ибо он пользуется основными состояниями, которые мы же используем для генерации других серверов, качает наш апп откуда надо, конфигит его, ставит его и шлет в Дженкинс воркфлоу параметры в виде ip адреса и прочей чуши. Шлет он это все через headless browser - потому что воркфлоу не поддерживает дженкинс api для заполнения параметров - а на выходе пользователь получает письмо в ключе Ваш билд завершился! будьте любезны по xxx.xxx.xxx.xxx:8080/ваше-чортово-приложение сходить.

Фух.
Ко всему этому планируется запилить автоматизацию так, чтобы все это триггерилось из правильных джобов, и вместо 20+ фиксированных серверов для автомейшна мы имели сгенерированную тачку специально для этого, конкретного и уникального, автомейшн рана.

Я чувствую себя сумрачным гением после этого.

Особенно удивляясь каждый раз тому, что это работает.
Нет, не поверите, уже месяц я тыкаю в джобу и каждый раз тайком жду, что все отвалится. Иногда, конечно, так и просиходит, но это случается так редко, что мне кажется, что в этом всем какой-то подвох.

Магия, блин.

11:02

Дайте мне эльфа... за горло подержать...
Кто помнит пятый элемент? Когда Зорг толкал стволы наемникам?

www.engadget.com/2015/04/27/darpas-steerable-bu...

15:14

Дайте мне эльфа... за горло подержать...
Prodigy со своим The Day Is My Enemy очень порадовали.
Особенно Invisible Sun. Я аж прямо в восторге - нет, не от слов, я в песнях слова что на инглише что на руссише почти не разбираю - а от ... композиции в целом.

12:16

Дайте мне эльфа... за горло подержать...
Хаха!
Я панголин!
изображение
g.co/doodle/qja95k

10:36

Дайте мне эльфа... за горло подержать...


16:16

Дайте мне эльфа... за горло подержать...
Бозон. Бозон Хиггса. Звучит!


23:03

Дайте мне эльфа... за горло подержать...
12.04.2015 в 12:29
Пишет  Ryuzaki_rnd:



URL записи

11:13

Дайте мне эльфа... за горло подержать...


10:16

Дайте мне эльфа... за горло подержать...
изображение

10:15

Дайте мне эльфа... за горло подержать...
изображение
Если бы не наколка с шаблей и родиной, аще отлично было бы.

16:30

Дайте мне эльфа... за горло подержать...
И до купы на тему чпу - www.cnczone.com/forums/chinese-machines/190286-...